// SelectorTable.h: interface for the SelectorTable class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SELECTORTABLE_H__38489FF1_DF49_4A80_8CA6_F067C980103B__INCLUDED_)
#define AFX_SELECTORTABLE_H__38489FF1_DF49_4A80_8CA6_F067C980103B__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "MultiRecordsDatabaseElement.h"
#include "ManagerTemplate.h"
#include "SelectorTableRecord.h"

namespace PDMS
{
	namespace PDMSDBIF
	{
		class DllExport SelectorTable  : public DatabaseTableTemplate<SelectorTableRecord>
		{
			DECLARE_REGISTER_MAP( SelectorTable );
		public:
			SelectorTable();
			virtual ~SelectorTable();
			
		public:

			StdString GetOpenSQL( const StdString& strCondition );

			void SetBoltDir(const StdString& strDir);
			const StdString GetBoltDir() const;

			void SetBOLTID(unsigned long lID);
			unsigned long GetBOLTID() const;

			void SetComponentID(unsigned long lID);
			unsigned long GetComponentID() const;

			void SetComponentDir(const StdString& strDir);
			const StdString GetComponentDir() const;

			void SetSDTEID(unsigned long lID);
			unsigned long GetSDTEID() const;

			void SetSCOMID(unsigned long lID);
			unsigned long GetSCOMID() const;

			void SetMTEXID(unsigned long lID);
			unsigned long GetMTEXID() const;

			void SetCATAMDBDir(const StdString& strDir);
			const StdString GetCATAMDBDir() const;

			void SetAngle(double d);
			double GetAngle() const;

			void SetShop(BOOL b);
			BOOL GetShop() const;

			void SetAllo(BOOL b);
			BOOL GetAllo() const;

			void SetEdge(const StdString& strEdge);
			const StdString GetEdge() const;

			void SetSType(const StdString& strSType);
			const StdString GetSType() const;
			
			void SetPbor3(double d);
			double GetPbor3() const;
			
			void SetPbor2(double d);
			double GetPbor2() const;
			
			void SetPbor1(double d);
			double GetPbor1() const;
			
			void SetPbor0(double d);
			double GetPbor0() const;
			
			void SetName(const StdString& strName);
			const StdString GetName() const;
			
			void SetGType(const StdString& strType);
			const StdString GetGType() const;
			
			void SetSpecName(const StdString& strName);
			const StdString GetSpecName() const;
			
			void SetID(unsigned long lID);
			unsigned long GetID() const;
			
			void SetParentID(unsigned long parentID);
			unsigned long GetParentID() const;

		protected:

			StdString GetTableName()
			{
				return StdString(_T("selector"));
			}

			void SetData( RecordPtr_ ptr );

		private:

		};
	}
}




#endif // !defined(AFX_SELECTORTABLE_H__38489FF1_DF49_4A80_8CA6_F067C980103B__INCLUDED_)
